<!DOCTYPE html>
<html lang="zh">

<head>
    <meta charset="utf-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0;" name="viewport" />
    <title>墨鱼</title>
    <script>
        // 添加了replaceAndAddNewline函数
        function replaceAndAddNewline(text) {
            text = text.split('\n').join('')
            console.log("text", text)
            const specialPattern = text.replace(/。”(?!\n)/g, '。”\n');
            const specialPattern2 = specialPattern.replace(/”(?!\n\n)/g, '”\n\n');
            let normalPattern = specialPattern2.replace(/。(?![”\n])/g, '。\n\n');
            normalPattern = normalPattern.split('\n\n\n').join('\n\n')
            console.log("normalPattern", normalPattern)
            return normalPattern;
        }


        // 实时更新下方文本框内容的函数
        function updateText() {
            var inputText = document.getElementById('inputBox').value;
            var formattedText = replaceAndAddNewline(inputText);
            document.getElementById('inputBox').value = formattedText;
        }

        // 复制上方文本框内容的函数
        function copyText() {
            var inputBox = document.getElementById('inputBox');
            inputBox.select();
            inputBox.setSelectionRange(0, 99999); // 适用于移动设备
            document.execCommand('copy');
        }
        function luolie(){
            var inputText = document.getElementById('inputBox').value;
            inputText = inputText + '\n\n上面的内容有哪些可以优化的点，帮我罗列一下？'
            document.getElementById('inputBox').value = inputText
        }
        function youhua(){
            var inputText = document.getElementById('inputBox').value;
            inputText = inputText + '\n\n请根据下面的优化意见，优化上面的小说内容。'
            document.getElementById('inputBox').value = inputText
        }

        function countWords(str) {
            str = str.trim(); // 去除字符串两端的空白字符
            if (str === "") {
                return 0; // 空字符串的单词数为0
            }
            // 使用正则表达式分割字符串
            // \s匹配任何空白字符，+表示连续的一个或多个空白字符
            str = str.split('\n').join('')
            return str.length; // 返回单词数量
        }
        function updateCount() {
            var textInput = document.getElementById('inputBox');
            var charCount = document.getElementById('charCount');
            // 添加事件监听器
            textInput.addEventListener('input', function () {
                // 获取输入框的值，并移除不计入字数的字符
                var text = textInput.value.replace(/-/g, '');
                // 更新字数
                charCount.textContent = countWords(text);
            });
        }
        function showTime() {
            var date = new Date(); // 获取当前日期和时间
            var time = date.toLocaleTimeString(); // 将时间格式化为易读格式
            document.getElementById('time').textContent = time; // 更新HTML元素内容
        }

        setInterval(showTime, 1000); // 每秒调用showTime函数一次
    </script>
</head>

<body onload="updateCount()" style="margin: 0;padding: 0;overflow: hidden;">
    <div style="display: flex;padding: 15px;padding-bottom: 0;font-size: 12px;">
        <button onClick="copyText()" style="margin-right: 15px;font-size: 12px;">复制</button>
        <button onClick="luolie()" style="margin-right: 15px;font-size: 12px;">罗列</button>
        <button onClick="youhua()" style="margin-right: 15px;font-size: 12px;">优化</button>
        <button onClick="updateText()" style="margin-right: 15px;font-size: 12px;">格式化</button>
        <div style="margin-right: 15px;">字数: <span id="charCount">0</span></div>
        <div style="margin-right: 15px;font-weight: bold;">当前时间: <span id="time"></span></div>
    </div>
    <div style="display: flex;padding: 15px;">
        <textarea id="inputBox"
            style="width: 100%;height: calc(100vh - 120px);font-size: 20px;font-family: 楷体;letter-spacing: 2px;padding: 10px;overflow: auto;"></textarea>
    </div>
</body>

</html>